import random

print("你好")

# 列表
fruit=["苹果","榴莲","桃子"]
x,y,z=fruit
print(x)
print(y)
print(z)

p=5
q="cxz"
print(str(p)+q)

# 在函数外部创建的变量称为全局变量
# 如果在函数内部创建同名变量，该变量将是局部变量，只能在函数内部使用。
# 具有相同名称的全局变量将保持原样，全局且具有原始值。
a="awesome"
def myfunc():
    a="fantastic"
    print("局部变量：",a)

myfunc()
print("全局变量：",a)

# 当在函数内部创建变量时，该变量是局部的，并且只能在该函数内部使用。
# 要在函数内创建全局变量，可以使用 global关键字。
x="111"
def myfunc():
    global x
    x="222"
myfunc()
print(x)

# 文本类型 str
# 数字类型 int float complex(复数)
# 序列类型 list(列表) tuple(元组) range(范围)
# 映射类型 dict(字典)
# 套装类型 set(集合), frozenset(冻结集)
# 布尔类型 bool
# 二进制类型： bytes,bytearray,memoryview

# 元组
x5 = ("apple","banana","cherry")
print(x5)
print(type(x5))
# 范围
x6=range(6)
print(x6)
# 字典
x7 = {"name" : "John", "age" : 36}
print(x7)

# random随机数
print(random.randrange(1,11))

# 遍历字符串
for x in "hello world":{
    print(x)
}
# 字符串长度
a="it is a great"
print(len(a))
# 检查字符串中是否存在某个短语或字符，可以使用关键词in
txt="The best things in life are free"
print("free" in txt)     # 返回布尔类型
print("best" not in txt)
if "thing" in txt:
    print("yes")
# 切片:指定开始索引和结束索引，以冒号分隔
# 获取从位置 2 到位置 5 的字符（不包括在内）
# 第一个字符的索引为 0
b="Hello,World"  # llo
print(b[2:5])
# 小写转大写
print(b.upper())
# 删除空格  strip()方法从开头或结尾删除任何空格
c=" aa aa  "
print(c.strip())
# 替换字符串
print(b.replace("H","P"))
# 拆分字符串
print(b.split(","))
# 字符串连接
d="Python "
e="is fun"
print(d+e)
# format传参
age=20
txt1="我今年{}"
print(txt1.format(age))
# format()方法接受无限数量的参数，并放置在各自的占位符中
day=5
month=9
year=2024
myorder="今天是{}年{}月{}日"
print(myorder.format(year,month,day))

# capitalize() 将第一个字符转换为大写
# casefold() 将字符串转换为小写
# center() 返回一个居中的字符串
# count() 返回指定值在字符串中出现的次数
# encode() 返回字符串的编码版本
# endswith() 如果字符串以指定的值结尾，则返回 true
# join() 将可迭代的元素连接到字符串的末尾
# find() 在字符串中搜索指定值并返回找到它的位置
# format() 初始化字符串中的指定值
# index() 在字符串中搜索指定值并返回找到它的位置
